home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
TeX 1995 July
/
TeX CD-ROM July 1995 (Disc 1)(Walnut Creek)(1995).ISO
/
macros
/
latex209
/
contrib
/
letters
/
serie
/
serienbr.sty
< prev
Wrap
Text File
|
1994-04-06
|
8KB
|
320 lines
%Serienbrief-Style 0.53ß
\typeout{Serienbriefstyle 0.53ß vom 6.3.94 von Gundolf Frank}
%Hier die Adressendatei ändern:
\def\adressendateiname{brief.adr}
\def\greatings{}
\def\optional#1#2[#3]{%
\escapechar=-1
\if\def#1%
\edef#2{\futurelet\noexpand\next
\csname\string#2@@body\endcsname}
\expandafter\edef\csname\string#2@@body\endcsname{%
\noexpand\if[\noexpand\next
\def\noexpand\next{\csname\string#2@@do\endcsname}%
\noexpand
\else
\def\noexpand\next
{\csname\string#2@@do\endcsname
[\expandafter
\noexpand\csname\string#2@@default\endcsname]}%
\noexpand
\fi
\noexpand\next}%
\expandafter\noexpand\expandafter
\def\csname\string#2@@default\endcsname{#3}%
\edef\optional@continue{
\expandafter\noexpand\expandafter
\def\csname\string#2@@do\endcsname[####1]}%
\escapechar="5C\relax
\let\next=\optional@continue
\else
\escape="5C
\errmessage{\string\def fehlt nach \string\optional}
\let\next=\relax
\fi
\next}
\long\def\text#1{\def\serientext{#1}}
\optional\def\serienbrief[{}]#2{
\def\serienbriefuebergabe{#1}
\def\zwparameter{#2}
\ifx\zwparameter\empty
\errhelp{Bei \serienbrief[Optionen]{suchkriterium} mu\ss{} ein Suchkriterium angegeben werden.}
\errmessage{Es wurde kein Suchkriterium angegeben!}
\fi
\openin7=\adressendateiname
\loop
\def\ende{}
\def\zeile{}
\def\test{---}
\endlinechar=-1
\read7to\zeile
\ifx\zeile\test
\read7to\nachname
\read7to\vorname
\read7to\firma
\read7to\abteilung
\read7to\strasse
\read7to\ort
\read7to\tel
\read7to\cosename
\ifx\cosename\empty
\def\cosename{\vorname}
\fi
\read7to\geburtsdatum
\read7to\paraer
\read7to\parazw
\read7to\geschlecht
\read7to\kontakt
\endlinechar=`\^^M
\ifx#1\empty
\ifx\zwparameter\nachname
\def\ende{gleich}
\fi
\fi
\def\bedingung{Nachname}
\ifx\serienbriefuebergabe\bedingung
\ifx\zwparameter\nachname
\def\ende{gleich}
\fi
\fi
\def\bedingung{Vorname}
\ifx\serienbriefuebergabe\bedingung
\ifx\zwparameter\vorname
\def\ende{gleich}
\fi
\fi
\def\bedingung{Firma}
\ifx\serienbriefuebergabe\bedingung
\ifx\zwparameter\firma
\def\ende{gleich}
\fi
\fi
\def\bedingung{Abteilung}
\ifx\serienbriefuebergabe\bedingung
\ifx\zwparameter\abteilung
\def\ende{gleich}
\fi
\fi
\def\bedingung{Strasse}
\ifx\serienbriefuebergabe\bedingung
\ifx\zwparameter\strasse
\def\ende{gleich}
\fi
\fi
\def\bedingung{Ort}
\ifx\serienbriefuebergabe\bedingung
\ifx\zwparameter\ort
\def\ende{gleich}
\fi
\fi
\def\bedingung{Telefonnummer}
\ifx\serienbriefuebergabe\bedingung%
\ifx\zwparameter\tel
\def\ende{gleich}
\fi
\fi
\def\bedingung{Faxnummer}
\ifx\serienbriefuebergabe\bedingung
\ifx\zwparameter\fax
\def\ende{gleich}
\fi
\fi
\def\bedingung{E-Mail}
\ifx\serienbriefuebergabe\bedingung
\ifx\zwparameter\email
\def\ende{gleich}
\fi
\fi
\def\bedingung{Geburtsdatum}
\ifx\serienbriefuebergabe\bedingung
\ifx\zwparameter\Geburtsdatum
\def\ende{gleich}
\fi
\fi
\def\bedingung{Cosename}
\ifx\serienbriefuebergabe\bedingung
\ifx\zwparameter\cosename
\def\ende{gleich}
\fi
\fi
\def\bedingung{Zusatz 1}
\ifx\serienbriefuebergabe\bedingung%
\ifx\zwparameter\paraer%
\def\ende{gleich}
\fi
\fi
\def\bedingung{Zusatz 2}
\ifx\serienbriefuebergabe\bedingung
\ifx\zwparameter\parazw
\def\ende{gleich}
\fi
\fi
\def\bedingung{Geschlecht}
\ifx\serienbriefuebergabe\bedingung
\ifx\zwparameter\geschlecht
\def\ende{gleich}
\fi
\fi
\def\bedingung{Kontakt}
\ifx\serienbriefuebergabe\bedingung%
\ifx\zwparameter\kontakt%
\def\ende{gleich}
\fi
\fi
\def\test{gleich}
\ifx\ende\test
\def\test{n}%
\ifx\geschlecht\test%
\def\@uebergabeletter{%
\firma\\
\ifx\abteilung\empty%
\\
\else
Abteilung \abteilung\\
\fi
\strasse\\
\ort
}
\fi
\def\test{w}%
\ifx\geschlecht\test%
\ifx\firma\empty%
\def\@uebergabeletter{%
Frau\\
\vorname\space\nachname\\
\strasse\\
\ort
}
\else
\def\@uebergabeletter{%
\firma\\
\ifx\abteilung\empty%
\else
Abteilung \abteilung\\
\fi
\ifx\nachname\empty
\ \\
\else
z.H. Frau \nachname\\
\fi
\strasse\\
\ort
}
\fi
\fi
\def\test{m}%
\ifx\geschlecht\test%
\ifx\firma\empty
\def\@uebergabeletter{%
Herr\\
\vorname\space\nachname\\
\strasse\\
\ort
}
\else
\def\@uebergabeletter{%
\firma\\
\ifx\abteilung\empty%
\else
Abteilung \abteilung\\
\fi
\ifx\nachname\empty
\ \\
\else
z.H. Herr \nachname\\
\fi
\strasse\\
\ort
}
\fi
\fi
\typeout{}
\typeout{Anschrift gefunden:}
\if\firma\empty
\else
\typeout{\firma}
\fi
\if\abteilung\empty
\else
\typeout{Abteilung\space\abteilung}
\fi
\typeout{\vorname\space\nachname}
\typeout{\strasse}
\typeout{\ort}
\typeout{}
\begin{letter}{\@uebergabeletter}
\def\test{herzlich}
\ifx\test\kontakt
\def\test{m}
\ifx\test\geschlecht
\def\@uebergabe{
Lieber \cosename,
}
\fi
\def\test{w}
\ifx\test\geschlecht
\def\@uebergabe{
Liebe \cosename,
\fi
}
\fi
\def\test{n}
\ifx\test\geschlecht
\def\@uebergabe{
Liebe Damen und Herren,
}
\fi
\fi
\def\test{formal}
\ifx\test\kontakt
\def\test{m}
\ifx\test\geschlecht
\def\@uebergabe{
Sehr geehrter \nachname,
}
\fi
\def\test{w}
\ifx\test\geschlecht
\def\@uebergabe{
Sehr geehrte Frau \nachname,
}
\fi
\def\test{n}
\ifx\test\geschlecht
\def\@uebergabe{
Sehr geehrte Damen und Herren,
}
\fi
\fi
\opening{\@uebergabe}
\serientext
\ifx\greatings\empty
\def\test{herzlich}
\ifx\test\kontakt
\closing{Mit herzlichen Grüßen}
\fi
\def\test{formal}
\ifx\test\kontakt
\closing{Mit freundlichen Grüßen}
\fi
\else
\closing{\greatings}
\fi
\end{letter}
\def\ende{}
\fi
\fi
\ifeof7
\def\ende{eof}
\fi
\ifx\ende\empty
\repeat
\closein7
}
\endinput